package com.xinjiang.electricpower.domain.DTO;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;

/**
 * @author feizhao
 * @date 2022/11/14
 * @apiNote 制单DTO实体类
 */
@Data
@NoArgsConstructor
@ToString
@ApiModel("派工单查询条件DTO类")
public class VoucherDTO {
    /**
     * 派工单id
     */
    @ApiModelProperty(value = "派工单id")
    private String id;
    /**
     * 户号
     */
    @ApiModelProperty(value = "户号")
    private String consNo;
    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    private String status;
    /**
     * 联系方式
     */
    @ApiModelProperty(value = "联系方式")
    private String contactWay;
    /**
     * 任务名称
     */
    @ApiModelProperty(value = "任务名称")
    @NotBlank(message = "任务名称不能为空")
    private String workName;
    /**
     * 任务内容
     */
    @ApiModelProperty(value = "任务内容")
    @Size(min = 0,max = 255)
    private String workContent;
    /**
     * 起始地
     */
    @ApiModelProperty(value = "起始地")
    @NotBlank(message = "起始地不能为空")
    private String startArea;
    /**
     * 目的地
     */
    @ApiModelProperty(value = "目的地")
    @NotBlank(message = "目的地不能为空")
    private String endArea;

    /**
     * 执行时间
     */
    @ApiModelProperty(value = "执行时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @NotBlank(message = "执行时间不能为空")
    private String createTime;
    /**
     * 计划完成时间
     */
    @ApiModelProperty(value = "计划完成时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @NotBlank(message = "计划完成时间不能为空")
    private String planFinishTime;
    /**
     * 实际完成时间
     */
    @ApiModelProperty(value = "实际完成时间")
    //@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private String realFinishTime;
    /**
     * 工作负责人
     */
    @ApiModelProperty(value = "工作负责人")
    @NotBlank(message = "工作负责人不能为空")
    private String responsible;
    /**
     * 班组/供电所
     */
    @ApiModelProperty(value = "班组/供电所")
    private String orgId;
    /**
     * 台区Id
     */
    @ApiModelProperty(value = "台区Id")
    private String areaId;
    /**
     * 工作人员
     */
    @ApiModelProperty(value = "工作人员")
    @NotBlank(message = "工作人员不能为空")
    private String members;
    /**
     * 外来人员
     */
    @ApiModelProperty(value = "外来人员")
    private String others;
    /**
     * 作业类型
     */
    @ApiModelProperty(value = "作业类型")
    @NotBlank(message = "作业类型不能为空")
    private String businessType;
    /**
     * 注意事项
     */
    @ApiModelProperty(value = "注意事项")
    @NotBlank(message = "注意事项不能为空")
    private String precautions;
    /**
     *
     * fpms-工作票
     */
    @ApiModelProperty(value = "fpms-工作票")
    private String fpmsWorkTicket;
    /**
     *
     *fpms-操作票
     */
    @ApiModelProperty(value = "fpms-操作票")
    private String fpmsOperationTicket;
    /**
     * 完成评价
     */
    @ApiModelProperty(value = "完成评价")
    private String completeEvaluation;
    /**
     * 完成情况
     */
    @ApiModelProperty(value = "完成情况")
    private String completeDetail;

}
